<template>
	<view id="app">
		<!-- 商家详情 -->
		<view class="topBg h150"></view>
		<!-- 商家信息 -->
		<view class="shop area mlr30">
			<view class="p20 df dfsb">
				<!-- logo -->
				<image :src="wrap.shop_logo" class="wh110 br10" mode="aspectFill" />
				<view class="f26 c999 w80p">
					<view class="f34 c333 fwb">{{wrap.shop_name}}</view>
					<!-- 距离 -->
					<view class="df aic mt20">
						<image src="/static/905.png" class="img905 mr20" mode="aspectFit"></image>
						距离 {{wrap.distance ? wrap.distance : '定位中...'}}
					</view>
					<!-- 位置 -->
					<view class="df mt20">
						<view class="img wh25 mt5">
							<image src="/static/904.png" mode="aspectFit"></image>
						</view>
						<view class="txt ml20">
							<text v-if="!wrap.shop_area">加载中...</text>
							<text v-else>{{wrap.shop_area}}{{wrap.shop_address}}</text>
						</view>
					</view>
				</view>
			</view>
		</view>

		<!-- tab栏 -->
		<scroll-view scroll-x="true" class="toptab df dfsa aic mt30 wsn" enable-flex>
			<view class="item" :class="{'active': (index == current)}" v-for="(item,index) in tab" :key="index"
				@click="tapTab(index)">
				<view class="txt">{{item}}</view>
				<view class="line"></view>
			</view>
		</scroll-view>

		<!-- 商品列表 -->
		<view class="proArea df dfsb aic fww plr30" v-if="current == 0">

			<view class="area w48p mb30" @click="toDetail(item)" v-for="(item,index) in wrap.list" :key="index">
				<!-- 商品图片 -->
				<view class="image">
					<image :src="item.images[0]" mode="aspectFill"></image>
				</view>
				<!-- 商品内容 -->
				<view class="wrap pt15 plr15 pb20">
					<!-- 商品标题 -->
					<view class="title t2hd f28 c333">{{item.name}}</view>
					<!-- 其他 -->
					<view class="rows mt25">
						<view class="txt c999 f26">{{item.categoryData.name}}</view>
						<view class="price cFF7B24 f32">￥{{item.price}}</view>
					</view>
				</view>
			</view>

		</view>

		<!-- 商家介绍 -->
		<view class="area mlr30 plr30 pb40" v-if="current == 1">
			<view class="p20">
				<view class="mt30 lh55 ti c333 f30">{{wrap.shop_desc}}</view>
			</view>

			<!-- 商家资质 -->
			<view class="p20">
				<view class="f34 tac c333 fwb lh45">商家资质</view>
				<image :src="item" class="w100p h440 mt30" v-for="(item,index) in wrap.shop_images" :key="index">
				</image>
			</view>
		</view>

		<!-- 填充 -->
		<view class="fill"></view>

		<!-- 联系商家 -->
		<view class="footer bFFF7CC tac fwb f34" @click="callShop">联系商家</view>
	</view>
</template>

<script>
	// 定义全局变量
	var that;
	// 默认
	export default {
		// 定义页面变量
		data() {
			return {
				// 选项
				tab: [
					'商品列表',
					'商家介绍',
				],
				// 下标
				current: 0,
				// 店铺详情
				id: '',
				// 坐标
				location: '',
				// 内容
				wrap: {
					// 商品列表
					list: [],
				},
			}
		},

		// 获取后
		onLoad(e) {
			// 赋值
			that = this;

			// 商家id
			if (e.id) {
				that.id = e.id;
			}
		},

		// 显示后
		onShow() {
			uni.authorize({
				scope: 'scope.userLocation',
				success() {
					// 获取当前经纬度
					uni.getLocation({
						type: 'wgs84',
						success(res) {
							// 开启导航栏加载
							uni.showNavigationBarLoading();

							// 赋值坐标点信息
							that.latitude = res.latitude;
							that.longitude = res.longitude;
							that.location = that.longitude + "," + that.latitude;

							// 商家详情
							that.getShop();

							// 获取商品
							that.getPro();
						}
					});
				},
				fail() {
					that.alert({
						value: "您未授权获取位置信息,将无法提供服务",
						success(rs) {
							if (rs.confirm) {
								// 调起客户端小程序设置界面，返回用户设置的操作结果。
								uni.openSetting();
							} else {
								that.alert("已拒绝")
							}
						},
					})
				}
			});
		},

		// 方法列表
		methods: {
			// 获取商品
			getPro() {
				// 请求接口 
				that.request({
					url: '',
					// 上传数据
					data: {
						table: 'goods',
						// 商家id
						user_id: that.id,
						// 详情
						status: 1,
					},
					// 调用成功
					success(rs) {
						// 返回成功
						if (rs.code == 1) {
							// 赋值空数组
							that.wrap.list = [];

							// 追加列表
							that.wrap.list.push(...rs.data);

							// 重新赋值刷新页面
							that.wrap = Object.assign({}, that.wrap);
						} else {
							//弹窗提示用户
							that.alert(rs.msg);
						}
					}
				})
			},

			// 商家详情
			getShop() {
				// 请求接口 
				that.request({
					url: '/api/index/getShop',
					// 上传数据
					data: {
						// 商家id
						id: that.id,
						// 定位
						location: that.location,
					},
					// 调用成功
					success(rs) {
						// 返回成功
						if (rs.code == 1) {
							// 赋值内容信息
							that.wrap = rs.data;

							// 隐藏导航栏加载
							uni.hideNavigationBarLoading();
						} else {
							//弹窗提示用户
							that.alert(rs.msg);
						}
					}
				})
			},

			// 跳转详情
			toDetail(item) {
				// 关闭跳转
				uni.redirectTo({
					url: '/pages/task/details?id=' + item.id,
				})
			},

			// 点击下标
			tapTab(i) {
				// 判断是否相等
				if (that.current == i) {
					return;
				}

				// 赋值下标
				that.current = Number(i);
			},

			// 联系商家
			callShop() {
				// 判断有无登录
				if (!uni.getStorageSync('token')) {
					// 弹窗提示
					that.alert('请先登录');
					return;
				}

				// 调用拨打电话
				uni.makePhoneCall({
					phoneNumber: that.wrap.shop_kfmobile,
				});
			},
		},

	}
</script>
<style lang="less">
	/* 商家 */
	.shop {
		margin-top: -120rpx;
	}

	// 默认文字颜色
	@color: #999;
	// 文字大小
	@size: 32rpx;
	// 线的颜色
	@line: #FF7B24;
	// 激活后的文字颜色
	@color1: #333;
	// 文字大小
	@size1: 34rpx;

	/* 顶部栏 */
	.toptab {
		height: 80rpx;

		/* 项 */
		.item {
			display: inline-flex;
			// padding: 10rpx 30rpx;
			flex-direction: column;
			align-items: center;

			// 文字
			.txt {
				color: @color;
				font-size: @size;
				transition: .3s;
			}

			// 线
			.line {
				width: 0;
				height: 10rpx;
				background-color: @line;
				border-radius: 100rpx;
				transition: .3s;
			}
		}

		// 激活的项
		.item.active {

			// 文字
			.txt {
				color: @color1;
				font-size: @size1;
			}

			// 线
			.line {
				width: 100%;
			}
		}
	}

	.img905 {
		height: 22rpx;
		width: 19rpx;
	}

	.img904 {
		width: 23rpx;
		height: 26rpx;
	}
</style>
